<?php

namespace App\Events;

use Illuminate\Broadcasting\Channel;
use Illuminate\Broadcasting\InteractsWithSockets;
use Illuminate\Broadcasting\PresenceChannel;
use Illuminate\Broadcasting\PrivateChannel;
use Illuminate\Contracts\Broadcasting\ShouldBroadcast;
use Illuminate\Foundation\Events\Dispatchable;
use Illuminate\Queue\SerializesModels;

class DailyTask
{
    use Dispatchable, InteractsWithSockets, SerializesModels;

    protected $mineType;
    protected $memberId;
    protected $type;
    protected $advId;

    public function __construct(string $miniType, int $memberId, string $type, ?string $advId = null)
    {
        $this->mineType = $miniType;
        $this->memberId = $memberId;
        $this->type = $type;
        $this->advId = $advId;
    }

    /**
     * @return string
     */
    public function getMineType(): string
    {
        return $this->mineType;
    }

    /**
     * @return int
     */
    public function getMemberId(): int
    {
        return $this->memberId;
    }

    /**
     * @return string
     */
    public function getType(): string
    {
        return $this->type;
    }

    /**
     * @return string|null
     */
    public function getAdvId(): ?string
    {
        return $this->advId;
    }
}
